type Toptions__CVP =
    Toptions_DISABLED
    & Toptions_NAME
    & Toptions_READONLY
    & Toptions_ONCHANGE
    & Toptions_CONTROLS
    ;

/**
 * 值控件基类
 * @description 模版类
 * @param <T> 子控件补充参数类型
 */
abstract class __CVP__<T extends Toptions__CVP> extends _CP_<T> {
    
    protected className(): string { return _CP_.CLASSES.VALUE_PLUGIN; };

    /**
     * 获取值
     * @returns 值
     */
    public abstract getValue(): any;

    /**
     * 设置值
     * @param value 值
     */
    public abstract setValue(value: any): void;

    /**
     * 只读
     */
    public readonly(): void { }

    /**
     * 可写
     */
    public editable(): void { }

    /**
     * 禁用
     */
    public disable(): void { }

    /**
     * 启用
     */
    public enable(): void { }

}
